#include "AllHeaders.h"
#include "KeyPress.h"
#include <allegro5\allegro.h>
#include <allegro5\allegro_font.h>
#include <allegro5\allegro_ttf.h>

class Jogo
{
	private:
		Lista Snake;
		Node Escama,Cabeca;
		int Cor[3], squareColor[3], score, escamasRemovidas,recorde,velocidade;
		KeyPress ultimoLado;
		bool pausado;

		ALLEGRO_DISPLAY *janela;
		ALLEGRO_EVENT_QUEUE *fila;
		ALLEGRO_EVENT ev;
		ALLEGRO_BITMAP *cobra;
		ALLEGRO_BITMAP *icon;
		ALLEGRO_BITMAP *pause;
		ALLEGRO_BITMAP *perdeu;
		ALLEGRO_BITMAP *ganhou;
		ALLEGRO_BITMAP *inicio;
		ALLEGRO_BITMAP *star;
		ALLEGRO_TIMER *timer;
		ALLEGRO_FONT *fonte;


	public:
		Jogo();
		~Jogo();

		void IniciaJogo();

	private:
		void IniciarGraficos();
		void Andar(enum KeyPress _key);
		void CriaEscama();
		void RandomizarCor(bool WithWhite);
		void RandomizarCorSemBranco();
		bool DetectarColisao();
		bool Comer(enum KeyPress _key,int speed);
		void Tempo(int* min, int* sec);
		void Pause();
		void Despause();
		void GravaScore();
		void LeRank();
		void GameLoop(int speed);
		void DestroiGame();
		void Jogo::Restart(bool _restart);
		
};